A Web browser, (X)HTML and CSS user agent, or UA for short) is a computer program executed at a client computer connected to a network such as the Internet, for enabling the client to access content on servers connected to the network. A Web browser includes a user interface, and a computer program portion for addressing a particular server and a particular document on the network. Also, a Web browser includes a computer program portion for displaying the content of a markup language document, in particular an (X)HTML document, received from a Web server via a network using the HTTP protocol, on a display connected to the client computer.
In the present disclosure, “a markup language document” should be understood as a structured document that, in addition to text, also includes particular tags/elements that define a format change or a hypertext link. Applicable examples of markup language documents are HTML, cHTML, HTML Mobile Profile, and XHTML documents, or alternatively XML documents. Markup language documents are in the following description denoted by the common term (X)HTML.
Most of the existing content of the World Wide Web is designed for desktop computers with large color monitors. Mobile wireless communication devices, such as mobile telephones, PDAs, or palmtop computers typically have much smaller displays. Ordinary television screens, which also may be used for displaying Web content, typically have a lower horizontal resolution than the common computer monitors, and will thus have similar properties.
In the present disclosure, when characterizing a display, the term “narrow” should be interpreted in terms of the number of horizontal pixels present in the display. As an example, a display with less than 350 pixels horizontally may be considered as “a narrow display”. The present invention will be particularly applicable for use with even narrower displays, such as a display with approximately 200 pixels horizontally.
To be able to display Web content on such a narrow display, prior art Web browsers have included formatting techniques that more or less intelligently remove or change the sizes on elements of the pages.
Most Web content is made using different versions of the HyperText Markup Language (HTML) as defined by the World Wide Consortium (W3C). Tables, a part of the standard, are widely used to position page elements such as graphics and text. Prior art methods used by Web browsers to format Web content for small screens fall into these categories:                Use zoom on the complete page to scale all elements        Change the size of the different table elements and their respective content to fit the width of the screen        Remove all table elements and display content without tables        
The first approach above has the advantage that pages look familiar to the user. However, when elements are shrunk without any other formatting, images and text sizes are likely to become too small and often not even readable. The second approach has an advantage on screen sizes between 350 pixels and 600 pixels width. The third approach has an advantage on screen sizes smaller than 350 pixels in width.
The table element was originally implemented into the HTML standard as a way to structure information on Web pages. However, Web-content creators (Web designers) soon realized that tables could be used to position (design) for example graphic elements in more ways than HTML intended to. This practice was soon adopted by most Web designers, and is still the most used way to create Web content. W3C warned about the consequences of this malpractice in the HTML 4.0 standard: (http://www.w3.org/TR/REC-html40/struct/tables.html.)
W3C's recommendation states that, “tables should not be used purely as a means to layout document content as this may present problems when rendering to non-visual media. Additionally, when used with graphics, these tables may force users to scroll horizontally to view a table designed on a system with a larger display. To minimize these problems, authors should use style sheets to control layout rather than tables.”
Unfortunately, the practice of using style sheets to control layout has only been adapted by a limited number of Web sites, and the table layout is by far the most common approach.
While the prior art formatting approaches mentioned above have had successful results on many Web sites, none of these techniques has been able to create a satisfying solution for pages containing tables. In particular, none of the prior art solutions seems to deal with or solve the problem of distinguishing between true tables and non-true tables when displaying a Web page.